package com.xuhuan.example.example037;

import com.xuhuan.example.util.ExampleArrayUtils;

/**
 * @author: huan.xu
 * @create: 2023/11/13 16:39
 * @description: 利用选择排序法对数组排序
 * 选择排序的基本思路：每一趟从待排序的数据元素中选出最小(或最大)的一个元素，顺序放在已排好序的数列的最后
 * 直到全部待排序的数据元素排完。
 **/
public class Example037 {
    public static void main(String[] args) {
        int[] array = {63, 4, 24, 1, 3, 15};
        System.out.println("排序前数组：");
        ExampleArrayUtils.printArray(array);
        for (int i = 1; i < array.length; i++) {
            int index = 0;
            for (int j = 1; j <= array.length - i; j++) {
                if (array[j] > array[index]) {
                    index = j;
                }
            }
            int temp = array[array.length - i];
            array[array.length - i] = array[index];
            array[index] = temp;
        }
        System.out.println("排序后数组：");
        ExampleArrayUtils.printArray(array);
    }
}
